home *** CD-ROM | disk | FTP | other *** search
/ Fritz: All Fritz / All Fritz.zip / All Fritz / FILES / COMMADIO / PYROMNT.LZH / LHA-DOC.EXE / LHA.DOC
Text File  |  1991-04-02  |  31KB  |  875 lines

  1. ██ This is a MODIFIED version of LHA.  Do not distribute it. ██
  2. ██ See section 4 of this document for details.               ██
  3. ██ Any comments by the modifier appear between these bars -> ██
  4.  
  5. ------------------------------------------------------------------------
  6.                        Manual for LHA Version 2.11
  7.  
  8.                                                    Ver 2.11   3 May 1991
  9. ------------------------------------------------------------------------
  10.                              NIFTY-Serve  SDI00506    HARUYASU YOSHIZAKI
  11.                              ASCII-pcs    pcs02846    Yoshi
  12.                              PC-VAN       FEM12376
  13. ------------------------------------------------------------------------
  14.  
  15.      This is a manual for the first public release of LHA.EXE.  LHA
  16.      is an upward compatible and improved version of LH ver 1.13C.
  17.      Since Microsoft's DOS 5.0 now has an interior command LH (for
  18.      Load High), the name has been changed from LH.EXE to LHA.EXE.
  19.  
  20.  
  21. 0.  To begin with
  22. -----------------
  23.  
  24.      This is a revised version of LH113c.EXE., an archiver which was
  25.      rather slow in execution but tight in compression rate.  I am
  26.      grateful for the support of LH113c's users both in Japan where
  27.      the .LZH file is a standard archived file name and in other
  28.      countries where .LZH has become well-known and used often.  I
  29.      have been  working on this new version for two years since the
  30.      last release of LH113c.EXE.  I am now glad to announce the re-
  31.      lease of LHA.
  32.  
  33.  
  34.      LHA differs from LH113c:
  35.      -----------------------
  36.  
  37.      LHA is better than LH ver 1.13 in compression rate, especially
  38.      with large files.  There are a few exceptions if using rather
  39.      small files.  (Under 1 Kb.)  LHA is faster than LH113c in de-
  40.      compressing, with new static Huffman coding, compared with the
  41.      older dynamic Huffman.  The speed of compression is not as fast
  42.      as I was expecting.  <sigh>
  43.  
  44.      LHA needs more memory than LH113c did.  If there is not enough
  45.      for LHA to work, it may have looser compression rate, although
  46.      it tries to continue execution.  LHA is upward compatible with
  47.      LH113c.  But LH113c is not completely compatible with the LHA
  48.      format.  Please switch from LH113c to LHA as soon as you can.
  49.      With the "/o" option, you can make archives dearchivable by
  50.      LHarc ver 1.xx - otherwise LHarc will complain for "unknown
  51.      method".
  52.  
  53.      LHA is distributed as a free program with copyright reserved.
  54.      There is no restriction for the use within private corporations
  55.      or the use for governmental agencies.  Users must be respon-
  56.      sible for the use of facilities of the software, especially of
  57.      the auto ! batch file (Often called a "Telop file).  The soft-
  58.      ware is distributed as is.  I am not liable for any damage
  59.      caused by the use of this software.  For commercial use, please
  60.      refer to our distribution policy.
  61.  
  62.      You can now proceed to read the complete description of com-
  63.      mands and options.  However, if you are not familiar with what
  64.      an archiver is, please refer to the introductory note LHA.HLP
  65.      written especially for LHA.EXE by Irvin Hoff.
  66.  
  67.  
  68. 1.  Usage
  69. ---------
  70.  
  71.   A.  General Format:
  72.   ==================
  73.  
  74.     LHA <command> [/option[-+012|WDIR]] <archive[.LZH]> [DIR\] [filenames]
  75.  
  76.  
  77.     command:       if one is not used, you get the help screen or a list 
  78.                    of FILE(s).
  79.     option:        you may supply one or more of options explained below.
  80.                    (needs an  /  or  -  in front, to designate an option)
  81.     archive:       Archive name.  Default extension is '.LZH'.
  82.     DIR:           Base directory name.
  83.     filenames:     File name or full pathname if specified.
  84.     WDIR:          Working directory name.
  85.  
  86.  
  87.   B.  <command>
  88.   =============
  89.  
  90.    a (Add) compress and add to an archive.
  91.  
  92.      Compress and Add files specified to an archive.  If the named
  93.      archive does not exist, then create one with the name.  LHA
  94.      overwrites any file in the archive by the given file name with
  95.      'a' command.  Compare with 'u' command.
  96.  
  97.      The commands 'a' and 'm' are used to make an archive.
  98.  
  99.      < Example 1 >  LHA a EX *.EXE
  100.  
  101.      LHA makes an archive named EX.LZH from all the files with ex-
  102.      tension 'EXE'.  Extension .LZH is default.
  103.  
  104.  
  105.    u (Update) Compress and Update.
  106.  
  107.      Compress and add files specified to an archive as command 'a'.
  108.      If LHA detects a file with the name same as the one in the
  109.      archive, then LHA selects the new one to add to archive, by
  110.      comparing the time stamp of each.
  111.  
  112.      < Example 2 > LHA u EX *.C
  113.  
  114.      All the FILE(s) with extension '.C' are archived in EX.LZH.
  115.      If you already have an SX.LZH containing a FILE with the same
  116.      name, only the one with newer time stamp is archived.
  117.  
  118.  
  119.    m (Move)
  120.  
  121.      Compress and add to an archive as 'u' command with checking
  122.      time stamps.  The difference is that LHA deletes all the files
  123.      moved into the archive.
  124.  
  125.      < Example 3 > LHA m EX *.C
  126.  
  127.      does  the same as
  128.  
  129.                   LHA u EX *.C
  130.                   del *.C
  131.  
  132.      Watch the second line.  With the /C option, LHA removes all the
  133.      FILE(s) into the ARChive ignoring time stamps.  You may lose
  134.      the one with the older time stamp.
  135.  
  136.  
  137.    f (Freshen)
  138.  
  139.      LHA looks for a FILE with the same name as the FILE in the
  140.      archive.  If it finds one with a newer time stamp, LHA
  141.      rewrites the one in the archive.  'LHA f /c ARC ' will not
  142.      check the time stamp.
  143.  
  144.      < Example 4 > LHA f EX LHA.DOC
  145.  
  146.      You have LHA.DOC compressed and archived in EX.LZH.  You get a
  147.      new LHA.DOC, then you replace the one in the ARChive, also.
  148.  
  149.  
  150.    d (Delete)
  151.  
  152.      LHA deletes a file (or files) in the archive.
  153.  
  154.  
  155.    e (Extract)
  156.  
  157.      LHA extracts FILE(s) from the archive with decompressing.  If
  158.      LHA finds a FILE in the archive with a newer FILE on the same
  159.      dir and having the same name, it skips that FILE(s).  LHA
  160.      extracts FILE(s) from ARChives made by L113C, namely, those
  161.      with the compression ids -lzs-, -lz4-, -lz5-.
  162.  
  163.      <Example 6 > LHA e EX LHA
  164.  
  165.      Extracts all the FILE(s) in the archive 'EX.LZH'.
  166.  
  167.      < Example 7 > LHA e EX *.COM
  168.  
  169.      LHA extracts all the files with extension .COM from 'EX.LZH'.
  170.  
  171.  
  172.   x (eXtract) LHA eXtracts compressed FILE with pathnames.
  173.  
  174.      If LHA can not find any path, then it will create directories.
  175.      FILE(s) must be archived with full-pathnames.  LHA restores the
  176.      entire directory structure.  'LHA e /x1m1 ARC' does the same.
  177.  
  178.      < EXample 8 > LHA x EX
  179.  
  180.      Suppose '\BIN\CG86.EXE' were among the FILE(s) in 'EX.LZH'.  LHA
  181.      creates directory '\BIN' if necessary, and extracts 'CG86.EXE'
  182.      there.
  183.  
  184.  
  185.    p (Print) Print FILE on standard out.
  186.  
  187.      LHA prints FILE decompressing from ARC to standard output.
  188.  
  189.      < Example 9 >  LHA  p ex lha.doc
  190.  
  191.      LHA extracts 'LHA.DOC' from 'EX.LZH' and displays it on your
  192.      terminal.
  193.  
  194.      < Example 10 > LHA p EX LHA.DOC > prn
  195.  
  196.      LHA extracts 'LHA.DOC' from 'EX.LZH' and prints it out from
  197.      your printer.
  198.  
  199.  
  200.    l (List)
  201.  
  202.      LHA lists FILE names in the archive on a line.  A FILE with
  203.      pathname will have a mark '+' on the head of the line.  'LHA
  204.      l /x ARC' shows full-pathnames of FILE(s) in ARC, and in 2 lines
  205.      per FILE.  You need not type 'l' to have the list.
  206.  
  207.      < Example 11 > LHA LHA210.EXE
  208.  
  209.      LHA assumes command 'l' and shows list of FILE(s) archived FILE
  210.      per line.
  211.  
  212.      < Example 11x > LHA /x LHA210.EXE
  213.  
  214.      You get a similar list but full-pathnames are inserted, and
  215.      each FILE is shown on two lines.
  216.  
  217.      NOTE:  Forward slash '/' is used as the pathname separator.
  218.  
  219.  
  220.    v (View)
  221.  
  222.      'LHA v ARC' is the same with 'LHA l /x ARC'.
  223.  
  224.  
  225.    t (Test)
  226.  
  227.      Check the integrity of ARC, by CRC check.
  228.  
  229.      LHA t LHA.EXE or LHA t LHA206.EXE
  230.  
  231.      will announce the authenticity of the file you own.
  232.  
  233.            LHA t LHA.EXE
  234.  
  235.      "This file seems to be ORIGINAL distributed from H.Yoshi."
  236.  
  237.      LHA.EXE tests itself for you.  This guarantees the version you
  238.      have is not hacked by anyone, though it is not the full guaran-
  239.      tee in the present state of art.  You can't check LHA.EXE if
  240.      you have used executable file compressors such as LZEXE, PKLITE
  241.      or DIET.
  242.  
  243.      < Example 12 > LHA t EX
  244.  
  245.      LHA tests integrity of the FILE(s) in 'EX.LZH'.
  246.  
  247.      < Example 13 > LHA t LHA.EXE
  248.  
  249.      LHA checks if LHA.EXE is the original file distributed.
  250.  
  251.  
  252.    s (Self-extract)
  253.  
  254.      LHA makes a Self-Extracting archive from ARC.LZH.  The default
  255.      switch /x0 is assumed when you do not specify.  SFX made with
  256.      the /x0 switch, small model, extracts files on the current
  257.      directory.  You can't activate some programs in the archived
  258.      FILE(s) automatically with small model.  The size of the SFX file
  259.      is smaller than those made with /x1 switch, large model.
  260.  
  261.      The large model SFX has the ability to restore subdirectory
  262.      structures and can automatically start execution from a FILE
  263.      inside the archive.
  264.  
  265.      < Example 14 > LHA s EX
  266.  
  267.      In this case, LHA makes a small model EX.EXE from EX.LZH.
  268.  
  269.  
  270.   C.  </option>
  271.   =============
  272.  
  273.      Each option takes 3 numerical values to define its finer
  274.      actions.  Use 0,1 and 2 to specify.  For some options, the
  275.      values 1 and 2 does the same thing.  You may toggle 0 and 1 by
  276.      '+' and '-" as with LH113c.  You may change switch character
  277.      (option) from  /  to  - if you prefer the '-'.
  278.  
  279.      /x[0|1] (eXtend)
  280.  
  281.  
  282.      LHA uses eXtended FILE names, namely full-pathnames for FILE(s).
  283.  
  284.      You are on the root directory.  Suppose you want to archive the
  285.      FILE '\tc\include\sys\stat.h' in an archive 'ARC.LZH'.  You type
  286.      'LHA a /x1 ARC.LZH \tc\include\sys\stat.h' to store the FILE
  287.      with full-pathname,'\tc\include\sys\stat.h'.  Similarly, you
  288.      have a 2-lined list with full-pathnames with 'l' command.
  289.  
  290.      /p[0|1|2] (Precise)
  291.  
  292.  
  293.      Search file names precisely.
  294.  
  295.      Suppose an ARChive 'TC.LZH' contains both 'STAT.H' and
  296.      'SYS\STAT.H'.  A simple command like 'LHA e TC stat.h' will
  297.      extract both files on the current directory and let one
  298.      override the other.  To avoid such confusion, you can type 'LHA
  299.      e -p TC stat.h' to extract 'STAT.H' only.  While by typing 'LHA
  300.      e -p TC sys\stat.h' you will get 'SYS\STAT.H'.
  301.  
  302.      /c[0|1|2]  (ignore Comparison of time)
  303.  
  304.  
  305.      With commands 'u', 'f', 'e', 'x', LHA ignores the checking of
  306.      time stamps.  With these commands, LHA chooses the newest FILE
  307.      with the same pathname to act on, by default.  This option lets
  308.      LHA ignore the time stamps.
  309.  
  310.  
  311.      /m[0|1|2]  (no Message)
  312.  
  313.  
  314.      ARC.LZH FILE' gives you the newest FILE in your directory.
  315.      'LHA e /m2 ARC.LZH FILE' dearchives every FILE by choosing
  316.      an unused file extension between 000-999.
  317.  
  318.      /a[0|1] (any Attribute)
  319.  
  320.  
  321.      This switch enables LHA to archive FILE(s) with any attributes.
  322.  
  323.      In the process of archiving with default switch /a0, LHA will
  324.      not archive FILE(s) with hidden and system attributes.  FILE(s)
  325.      with read-only attribute is archived with the attribute. With
  326.      this switch on, '/a1', FILE(s) of any attribute are archived
  327.  
  328.      In the process of dearchiving, with /a1, dearchived FILE(s)
  329.      preserve their original attributes. With /a0, you can't
  330.      dearchive files with hidden and system attributes.  Read-only
  331.      FILE(s) are dearchived deprived of their original attribute.
  332.  
  333.      /r[0|1|2] (Recursive)
  334.  
  335.  
  336.      LHA archives and extracts files recursively from subdirect-
  337.      ories.  'Recursively' means LHA searches all FILE(s) from all
  338.      subdirectories under the specified directory if there is any.
  339.  
  340.      There are three different modes for the '/r' switch.
  341.  
  342.      /r0: (non-recursive mode, default)
  343.  
  344.  
  345.      LHA collects files specified by path names only.
  346.  
  347.      /r1:
  348.  
  349.  
  350.      LHA separates the given pathname into a directory name and FILE
  351.      name.  LHA recursively collects FILE(s) with the given name from
  352.      all the directories under the directory specified.
  353.  
  354.      < Example 15 > LHA a /r1 SOURCE.LZH \SOURCE.C\SOURCE\*.H
  355.  
  356.      LHA collects FILE(s) with extension C and H from the directory
  357.      \source and its subdirectories, probably '\SOURCES\SAMPLES\*.C'
  358.      but not '\SOURCE\*.OBJ'.
  359.  
  360.      /r2:
  361.  
  362.  
  363.      LHA recursively collects all the files from all the specified
  364.      subdirectories.  Tree structure of the specified directory is
  365.      archived as it is.
  366.  
  367.      < Example 16 > LHA a /r2x1 a:\*.*
  368.  
  369.  
  370.      NOTE:  LH113c has set /x whenever /r is set in 'e' or 'x'
  371.             commands.  LHA differs from LH113c in that /x is
  372.             not set with /r automatically.
  373.  
  374.      The following questions are the most frequently asked ones:
  375.  
  376.      (1) How do you backup a disk a: ?
  377.  
  378.                         LHA a /r2x1 LZH a:\
  379.  
  380.      (2) Then how do you retrieve all the directories and files on
  381.          b:?
  382.  
  383.                         LHA x ARC.LZH b:\
  384.  
  385.  
  386.      /w[0|1|<Directory Name>] (Work directory)
  387.  
  388.      Specify the directory name where LH makes temporary files.
  389.  
  390.                         LHA a /wd:\  ARC.LZH FILE(s)
  391.  
  392.      set -w switch on.
  393.  
  394.      By default, LHA makes all the temporary files on the directory
  395.      where ARC.LZH is to be made.  It will rename the temporary file
  396.      as ARC.LZH.
  397.  
  398.      LHA makes temporary files on the current directory if no name
  399.      is specified with '/w+'.
  400.  
  401.      When you set Environmental variable 'TMP' this switch is set
  402.      automatically to be 1.
  403.  
  404.      The switch helps LHA when you have not enough room in your base
  405.      directory, or when you have a high speed memory device like RAM
  406.      disk or HARD ram.
  407.  
  408.  
  409.      /n[0|1|2] (No indicator)
  410.  
  411.      In this version, LHA outputs compressing indicator "ooo....."
  412.      to standard error.  The switch is to suppress this output.
  413.  
  414.      /n1: LHA disables output "ooo....." to indicate its progress.
  415.  
  416.      /n2: LHA disables outputs of filename, compression rates.
  417.  
  418.  
  419.      /t[0|1] (Time stamp)
  420.  
  421.      With command a,u,m,f,d reset time stamp of ARC.lzh according to
  422.      the newest file in the archive.  By default, the time stamp of
  423.      an ARC.LZH is the time when the ARC.LZH is made.
  424.  
  425.  
  426.      /z[0|1|2] (Zero compression)
  427.  
  428.      LHA makes an archive without compressing.
  429.  
  430.      /z1: None of the FILE(s) is compressed
  431.  
  432.      /z2: Compress and archive except for the FILE(s) with exten-
  433.           sions:
  434.  
  435.                .ARC, .LZH, .LZS, .PAK, .ZIP, .ZOO.
  436.  
  437.      /z<extension>:  Do not compress FILE(s) with the specified
  438.      extension.  This switch assumes /z2.  You may use wild card to
  439.      specify, and you may or may not put '.' in front of the exten-
  440.      sion.  With '/zdbf' you don't compress FILE(s) with extension
  441.      '.DBF'.  To assign FILE(s) with no extension like 'MAKEFILE' 
  442.      will not be compressed, please set '/z.'.  The '/z' option has 
  443.      obviously another meaning.  You may specify multiple extensions 
  444.      by writing sequentially:
  445.  
  446.                LHA a /ZCOM /ZEXE ARChive.LZH *.*
  447.  
  448.      In this case all files on your current directory are archived, 
  449.      and packed except for those having the extension 'COM' or 'EXE'.
  450.  
  451.  
  452.      /o[0|1] (Old compatible compression)
  453.  
  454.      LHA makes an archive compatible with the LH113c format.  Even
  455.      in this case, LHA makes tighter compression than LH113c ver
  456.      1xx.  The header id is automatically set to -h1.
  457.  
  458.  
  459.      /h[0|1|2] (Header level)
  460.  
  461.      Choice of header level, default is /h0.
  462.  
  463.  
  464.      /i[0|1] (don't Ignore case)
  465.  
  466.      Recognize Upper and Lower cases.  LH(arc)s have common header
  467.      format in other OS's where cases are recognized as distinct.
  468.      This option is prepared for dearchiving archives made by other
  469.      OS'.  In the DOS version of LHA, you can't differentiate upper
  470.      and lower when LHA archives FILE(s) into the archive.  Names
  471.      are all stored in upper case.
  472.  
  473.  
  474.      /l[0|1|2] (Long display ).
  475.  
  476.      LHA outputs filenames in different formats when LHA archives
  477.      and dearchives.
  478.  
  479.       /l0 : FILE names only.
  480.       /l1 : Full-pathnames stored or to be stored in archive in 2 lines.
  481.       /l2 : Full-pathname of FILEs accessed by LHA in 2 lines.
  482.  
  483.      < Example 16 > LHA a /r1x1l2 LINK.LZH c:\LINK.*
  484.  
  485.      LHA collect LINK.* with full-pathname from directories below
  486.      c:\, with information from where LHA get these FILE(s).
  487.  
  488.  
  489.      /-[1] (The first letter switch).
  490.  
  491.      LHA recognizes the characters '-' and '@' as the first letter
  492.      of a FILE name.  By default, any file beginning with '@', like
  493.      '@xxx' is recognized as a Response File 'xxx'.  To exit from
  494.      this mode specify '/-[0]'.  You cannot use '--0' in this
  495.      particular case.  LHA thinks '--0' as a file name.
  496.  
  497.  
  498.   D.  Base Directory.
  499.   ==================
  500.  
  501.      Base directory is not the current nor the root directory.  It
  502.      is the directory on which LHA is executed.  Or you may believe
  503.      that you move to this directory and execute LHA from there. You
  504.      may specify a number of directories as your base directories.
  505.  
  506.  
  507.   < Example 17 > LHA x program c:\BIN\ *.EXE *.COM c:\TEMP\ *.MAN *.DOC
  508.                                ~~~~~~~             ~~~~~~~~
  509.  
  510.      Suppose you are on the directory d:\.  You want to extract
  511.      files with extensions .COM and .EXE on c:\BIN, and those with
  512.      extensions .MAN and .DOC on the directory c:\TEMP.  This is
  513.      equivalent to the following set of command lines:
  514.  
  515.              D>C:
  516.              C>CD \BIN
  517.              C>LHA x D:\program *.COM *.EXE
  518.              C>cd \TEMPp
  519.              C>LHA x D:\program *.MAN *.DIX
  520.  
  521.      Naturally, you can't dearchive a single FILE on multiple di-
  522.      rectories.  The directory specified first has the priority.
  523.  
  524.  
  525.   E.  DOS redirection and response file
  526.   =====================================
  527.  
  528.      LHA can't accept too many file names on a command line due to
  529.      MS-DOS's restriction.  To avoid this inconvenience, LHA now
  530.      accepts PIPES and REDIRECTS of DOS.  Besides, LHA can use work
  531.      file called response file to record the names of the files to
  532.      be archived like MAKEFILE for some compilers.
  533.  
  534.  a.  Response File.
  535.  
  536.      The response file name will be marked with the letter '@' as of
  537.      LINK.EXE, which is a text file.  You may just write whatever
  538.      you want LHA to be done on this file.  Response file ignores CR
  539.      code and uses space as a separator.  You may write options in
  540.      the response file but you can't nest, calling other response
  541.      file, file names.
  542.  
  543.  
  544.  b.  DOS Pipes and Redirects.
  545.  
  546.      You may specify the same information supplied by a response
  547.      FILE by using pipes or redirections.  You may create a response
  548.      FILE by redirection.
  549.  
  550.      < Example 18 > LHA l /n1 PARTS > FILE(s)
  551.                     LHA a NEWPARTS @FILE(s)
  552.  
  553.      Make a list of files in the 'PARTS.LZH' archive and use it to
  554.      make a new ARChive 'NEWPARTS.LZH'.  This is done by using the
  555.      response files, after some editing.
  556.  
  557.      < Example 19 > LS | SORTR | LHA a ALL ls -c | LHA a ALL
  558.  
  559.      Make a list of files in a directory by LS.EXE.  Sort file names
  560.      and make a sorted archive ALL.LZH.  Beware of the various for-
  561.      mats from output of LS.EXE.  LS.EXE is supposed to list files
  562.      one name per line without any attributes or time stamps.  LS
  563.      designed after UNIX will do the trick by "ls -c" or "ls -C".
  564.      C or c stand for "sorted by columns".
  565.  
  566.  
  567.   F.  Environmental Variables
  568.   ===========================
  569.  
  570.  a.  LHA and LHARC
  571.  
  572.      LHA overrides LHARC.  This will reset default optional.
  573.  
  574.  
  575.  b.  TMP
  576.  
  577.      Set working directory as -w option.  In case LHA recognizes no
  578.      working directory, it uses the current directory as the working
  579.      directory and creates temporary files on it.
  580.  
  581.  
  582.  c.  TZ
  583.  
  584.      The time zone (EST, PST, etc.) must be set when you archive
  585.      with the header level -h2- and when you dearchive with -h2-. In
  586.      the Eastern Standard Time zone you have to set TIME ZONE with
  587.      the DOS command: set TZ=EST+5.  Remember the default Remember
  588.      the default header level is -h1-, in which case you are all
  589.      set.
  590.  
  591.  
  592.   G.  Exit Codes.
  593.   ==============
  594.  
  595.      LH will return following result codes after batch or other
  596.      processes' execution.
  597.  
  598.      0.  Normal.
  599.  
  600.      1.  CRC error, probably with 'e','x','t' commands.
  601.  
  602.      2.  Fatal error.  Process terminated without transactions.
  603.  
  604.      3.  Failed to write temporary files in the archive.  You may
  605.          find a temporary file LHTEMP)2(.LZH on your working direct-
  606.          ory.  You may rename this file with extension LZH, and use
  607.          it as an archive.
  608.  
  609.  
  610.   H.  Working File Names
  611.   ======================
  612.  
  613.        LHTMP)1(.LZH : Old ARChive renamed.
  614.        LHTMP)2(.LZH : Working file to be renamed as ARChive.
  615.  
  616.  
  617. 2.SFX, Self-Extracting archive
  618. ------------------------------
  619.  
  620.       General Usage:
  621.  
  622.          SFX.EXE [/x] [/!] [/eDIR] [DIR]
  623.  
  624.            /x: do not create new directory.
  625.            /!: auto-execution batch enable.
  626.            [/eDIR],[DIR]; specify directory to extract.
  627.  
  628.  
  629.          SFX.EXE is an executable file with FILE(s) stored in
  630.          the archive to be automatically extracted by exe-
  631.          cution.  All the LHA distribution will be in the
  632.          Self-Extracting (SFX) .EXE-format.  Only LHA.EXE makes
  633.          SFX files from archive *.LZH made by LHA.EXE.  You
  634.          can't make a Self-Extracting executable file from the
  635.          archive made by 'LH113c.1.xx'.
  636.  
  637.      LHA makes two models of SFX files: (a) the small model and (b)
  638.      the large model according to the switch /x0 or /x1, with the
  639.      following special functions.
  640.  
  641.  
  642.    A.  Telop.
  643.    =========
  644.  
  645.      LHA displays any file with name '!' if SFX.EXE finds it
  646.      archived. LHA holds one screen after showing [Y/N] prompt.  LHA
  647.      proceeds to execute if it receives 'Y'.  It quits (aborts)
  648.      execution for 'N'.  (The '!' character was used as it is the
  649.      first printing character.  A file starting with '!' will always
  650.      be the first file in that archive.)
  651.  
  652.  
  653.    B.  Directory Specification.
  654.    ===========================
  655.  
  656.      This is possible only for the large model.  You can name the
  657.      directory on which to execute SFX.EXE.
  658.  
  659.      < Example 20 > LHA210.EXE /xec:\user
  660.  
  661.      LHA extracts FILE(s) in LHA210.EXE on C:\USER.  You may of
  662.      course type:
  663.  
  664.                 LHA e /x0 LHA210.EXE c:\user ,
  665.  
  666.      to keep the TELOP file.
  667.  
  668.  
  669.    C.  Auto Execution
  670.    ==================
  671.  
  672.      This is possible only for large models.
  673.  
  674.      Archive a batch file with the name "!.BAT" and include it in
  675.      the SFX file.  This batch works if and only if you type:
  676.  
  677.                      LHA210 -!
  678.  
  679.      LHA always extracts files on the current directory.  Any
  680.      existing "!.BAT" file is overwritten.  You can't activate an
  681.      existing !.BAT by using the "-!" switch even if there is one on
  682.      the current directory.  The batch file is read if and only if
  683.      it is archived in the SFX file.
  684.  
  685.      Two Models of Self-Extracting files are available:
  686.  
  687.  
  688.  a.  Small Model  (LHA s SFX.LZH)
  689.  
  690.      This is the default model.
  691.  
  692.      LHA ignores the directory structures even if you make the
  693.      archive file with the /x or /r[1|2] switch.  LHA holds only the
  694.      FILE names.  SFX.EXE extracts files to the current directory.
  695.  
  696.      There is no limit on the size of SFX.EXE as there was for
  697.      LH113c.
  698.  
  699.  
  700.  b.  Large Model  (LHA s /x1 SFX.LZH)
  701.  
  702.      You can run a batch file to specify the directory to extract
  703.      files.  You can retrieve original directory structures with
  704.      this model.  You may refrain from creating unexpected
  705.      structures by using the /x switch.
  706.  
  707.  
  708. 3.  Main Differences from LH113c
  709. --------------------------------
  710.  
  711.      LHA is an improved version of LH113c in principle.  You will
  712.      notice a number of differences between the two, when comparing.
  713.      Some of the differences will be mentioned at this time.  (You
  714.      may wish to read the LH113.c manual for a better comparison if
  715.      anything appears confusing.)
  716.  
  717.      FILE names are not sorted when entered into an archives.  They\
  718.      are entered in the order in which they appear in the directory,
  719.      when using wild cards.  (This is different from LH113c.) If you
  720.      cards.  If you specify the order of FILE, then the order is
  721.      reproduced in the archive.  If you add new FILE(s), they will
  722.      be added at the end of the existing files.
  723.  
  724.      There are external utility programs by other authors which you
  725.      may use to sort the FILE names in your directory prior to
  726.      adding them to the archive.  Some programs actually resort the
  727.      archive itself.  Few include LH113c archives as LH113c already
  728.      sorted those.  LHA210 doesn't.  By using a 'pipe' you can type:
  729.  
  730.      < Example 21 >   LS *.C *.H | SORT | LHA a EX.
  731.  
  732.      LHA collects FILE(s) with extensions C and H sorted in the
  733.      archive named 'EX.LZH'.
  734.  
  735.      With LHA, the /r switch does not necessarily activate the /x
  736.      switch in extraction. In this version of LHA, the 'x' command
  737.      is equivalent to using 'E /x1m1', namely, LHA restores all the
  738.      tree structures of subdirectories.
  739.  
  740.      LHARC executed an AUTOLARC.BAT file by key word upon self-
  741.      extracting.  LHA no more uses keyword comparison.  If a SFX
  742.      file contains an !.BAT file, the batch is activated by '-!'
  743.      following the executable file name.
  744.  
  745.      The time stamp of LHA is relatively counted from 1970-01-01,
  746.      00:00:00 UTC by seconds.  You must be careful not to set date
  747.      or time which is illusory, like 00-00-00.  LHA will display
  748.      some indefinite date from overflow of the counter.
  749.  
  750.  
  751. 4.  Our distribution Policy
  752. ---------------------------
  753.  
  754.      This software, this document and LHA.EXE, is a copyright-
  755.      reserved free program.  You may use, copy and distribute this
  756.      software free of charge under the following conditions.
  757.  
  758.   1.  Never change Copyright statement.                              ██ OK ██
  759.  
  760.   2.  The enclosed documents must be distributed with as a package.  ██ OK ██
  761.  
  762.   3.  When you have changed the program, or implemented the program  ██ OK ██
  763.       for other OS or environment, then you must specify the part
  764.       you have changed.  Also make a clear statement as to your name
  765.       and MAIL address or phone number.
  766.  
  767.   4.  The author is not liable for any damage on your side caused by ██ OK ██
  768.       the use of this program.
  769.  
  770.   5.  The author has no duty to remedy for the deficiencies of the   ██ OK ██
  771.       program.
  772.  
  773.   6.  When you are to distribute this software with publications or  ██ OK ██
  774.       with your product, you have to print the copyright statement
  775.       somewhere on the disk or on the package.  You cannot
  776.       distribute this software with copyprotected products.
  777.  
  778.  
  779.           As long as those conditions are satisfied, you do not
  780.           need to get the author's permission to use or to dis-
  781.           tribute the software.
  782.  
  783. ███████████████████████████████████████████████████████████████████████████████
  784.  
  785. Modifications made to LHA.EXE by Pinnacle Software CP 386 TMR QC H3P 3C6 Canada
  786.  
  787. The words Melting and Melted were changed to Reading and *DONE* because the
  788. word "Melt" proved to be alarming to some users.  "Melting" appears twice in
  789. the program.  The first instance was replaced with "Reading" while the second
  790. instance was replaced with READING.
  791.  
  792. The LHA program itself was then compressed with the freeware DIET program.
  793.  
  794. All products that Pinnacle Software ships that use LHA.EXE are sent with a
  795. self-extracting LHA-compressed copy of this document.
  796.  
  797. ███████████████████████████████████████████████████████████████████████████████
  798.  
  799.  
  800. 5.  How to contact the author.
  801. ------------------------------
  802.  
  803.      Please send MAIL to Forum flabo on Nifty Serve.  Go Nifty on
  804.      CompuServe and read the instructions there.  Your inquiries or
  805.      your questions are to be addressed to the one of the above
  806.      Nifty forums.  Direct MAIL to the author.
  807.  
  808.     My mail address :  SDI00506 | PFF00253 on Nifty Serve.
  809.                        pcs02846               ASCII-NET pcs.
  810.                        FEM12376               PC-VAN.
  811.  
  812.     Oversea Users may send inquiries, also, to K.Okubo to the address:
  813.                        [74100,2565]        on Compuserve,
  814.                        K.Okubo                Genie,
  815.                        c00236@sinet.ad.jp.    INTERNET,CSNET etc.
  816.  
  817.  
  818. 6. Acknowledgements
  819. -------------------
  820.  
  821.      I used the following softwares distributed on BBS.
  822.  
  823.      1. LSI C-86 ver 3.20 evaluation copy, from LSI Japan.
  824.  
  825.      2. A-MACROS /Structured Assembler Macros,
  826.         AMSCLS.INC (c) Hortense S. Endoh 1986,1987
  827.         ver.2.10.
  828.  
  829.      I appreciate the public distribution of these excellent softwares.
  830.  
  831.      What have I done in these days of rapidly changing software
  832.      technologies?  My LH113c has contributed for the improvements
  833.      of similar products such as PKZIP(tm) and PAK(tm).  Even with
  834.      my modest Japanese estimate, I can be proud of this achievement
  835.      at this time.  I thank all those people who supported and used
  836.      LH113c - voices of users have always been a constant encourage-
  837.      ment to me.
  838.  
  839.         I express my gratitude to Haruhiko Okumura and members
  840.         of SIG Science of PCVAN for the improvements of algo-
  841.         rithms,
  842.  
  843.         to K.Okubo who introduced and supported LH113c on over-
  844.         sea networks such as CompuServe and GEnie.
  845.  
  846.         to Irv Hoff who worked with Kenjiro Okubo on reviewing
  847.         the English version for spelling, grammar and English
  848.         phrasing.
  849.  
  850.         to K.Miki who introduced me to archivers and hold a
  851.         place for experiments,
  852.  
  853.         to members of LSI-Japan who offered excellent versions
  854.         of LSI-C, to the members of Forum FHONYAKU who prepared
  855.         the English manual, and finally to all who used LH113c
  856.         and supported it.
  857.  
  858.  
  859. 7.  Reference
  860. -------------
  861.   1.  Knuth, D.E., Dynamic Huffman Coding, J.Algorithms, 6:163-180,
  862.       1985.
  863.   2.  AP-Labo,   Harddisk Cook Book,  Shoeisha,Tokyo, 1987(Jap).
  864.   3.  Kurita, T.,  Tool Box of Coputing, Huffman Coding, bit,
  865.       70:100-101, 1988(Jap).
  866.   4.  Okumura,K.,Masuyama,K.,Miki,K.  Practice and theory of Data
  867.       Compression.  The Basic, 70(March):1-65, 1989(Jap).
  868.   5.  Fiala,E.R., and Greene,D.H., Data Compression with Finite Win-
  869.       dows, Commun.ACM, 32:490-595,1989.
  870.   6.  Okumura,H., and Yoshizaki,H.  Introduction to  Compression
  871.       Algorithm, C Magazine 3:1:44-68, 1991(Jap).
  872.  
  873.                               - end -
  874.  
  875.